// 1.引入koa框架 ==> 等同于引入http模块，对http模块做了一层封装
const koa = require('koa')
// 2.创建服务器
const app = new koa()  // 等同于 http.createServer()

// 4.注册中间件 (中间件可以注册多次，需使用next()函数调用，才会进入到下一个中间件)
app.use((ctx,next)=>{
    // console.log(ctx) 
    ctx.body = '<h1>hello world</h1>'
    ctx.state.name = 'kanglang'  // 通过state保护ctx内部对象成员属性不被污染，进一步达到数据共享
    next()
})

app.use((ctx,next)=>{
    console.log(ctx.state.name)  // kanglang 
})


// 3.监听端口
app.listen(3000)